/**
  ETFAna project, Anyang Normal University && IMP-CAS
  \class ETFAuxAna
  \brief a worker class auxiliary to ETFAnalyzer, for refined ana in a global scope
  \author SUN Yazhou, asia.rabbit@163.com
  \since 2024-06-23
  \date 2024-06-23 last modified
  \attention
  changelog
  <table>
  <tr>  <th>Date         <th>Author      <th>Description                   </tr>
  <tr>  <td>2024-06-23   <td>Asia Sun    <td>file created                  </tr>
  </table>

  \copyright Copyright (c) 2021-2024 Anyang Normal U. && IMP-CAS with LGPLv3 LICENSE
*/

#ifndef ETFAuxAna_h
#define ETFAuxAna_h

class ETFTimer2;
class ETFTimer4;
class ETFTOFWall;
class ETFT0Array;
class ETFMUSIC;
class ETFDCTa;
class ETFDC;

class ETFAuxAna{
public:
  ETFAuxAna();
  virtual ~ETFAuxAna();

  virtual void Init();
  virtual void Reset();
  virtual void Register();
  virtual void Ana();

protected:
  double atof1, abeta0, abg0;
  double az0, aaoz0;

  // some detectors //
  ETFTimer2 *fT1p, *fT1v, *fT0p, *fT0v; ///< tstop and tstart of PXI and VME
  ETFTimer4 *fT0F1, *fVETO; // tstart at F1, and VETO before tstop
  ETFTOFWall *fTOFW;
  ETFT0Array *fT0Arr; ///< just as its name indicates
  ETFMUSIC *fMU[2]; ///< [2]: the music pre-([0]) and post-([1]) the reaction target
  ETFDCTa *fdcTa[2][2];
  ETFDC *fdc[3];
};

#endif
